/*
给你一个非负整数 x ，计算并返回 x 的 算术平方根 。

由于返回类型是整数，结果只保留 整数部分 ，小数部分将被 舍去 。
*/
class Solution {
public:
    int mySqrt(int x) {
        if(x==1){
            return 1;
        }
        int min=0;
        int max=x;
        int m;
        while(max-min>1){
            m=(max+min)/2;
            if(x/m<m){
                max=m;
            }
            else{
                min=m;
            }
        }
        return min;
    }
};